import request from '@/config/axios'

// 车辆信息 VO
export interface VehicleVO {
  id: number // 车辆ID
  name: string // 车辆名称
  brand: string // 车辆品牌
  model: string // 车辆型号
  supplier: string // 供应商
  buyDate: Date // 购买日期
  amount: number // 购买金额，单位：元
  color: string // 车身颜色
  seats: number // 座位数
  engine: string // 发动机号
  vin: string // 车架号
  insureDate: Date // 车险到期日期
  reviewDate: Date // 车审到期日期
  oil: string // 车辆油耗
  mileage: string // 开始里程数
  driver: string // 驾驶员
  thumb: string // 缩略图
  fileUrl: string // 附件地址
  remark: string // 备注;
  status: number // 状态
  creator: string // 创建者
  createTime: Date // 创建时间
  updater: string // 更新者
  updateTime: Date // 更新时间
}

// 车辆信息 API
export const VehicleApi = {
  // 查询车辆信息分页
  getVehiclePage: async (params: any) => {
    return await request.get({ url: `/office/vehicle/page`, params })
  },

  // 查询车辆信息详情
  getVehicle: async (id: number) => {
    return await request.get({ url: `/office/vehicle/get?id=` + id })
  },

  // 新增车辆信息
  createVehicle: async (data: VehicleVO) => {
    return await request.post({ url: `/office/vehicle/create`, data })
  },

  // 修改车辆信息
  updateVehicle: async (data: VehicleVO) => {
    return await request.put({ url: `/office/vehicle/update`, data })
  },

  // 删除车辆信息
  deleteVehicle: async (id: number) => {
    return await request.delete({ url: `/office/vehicle/delete?id=` + id })
  },

  // 导出车辆信息 Excel
  exportVehicle: async (params) => {
    return await request.download({ url: `/office/vehicle/export-excel`, params })
  },

  // 查询车辆信息精简列表
  getVehicleSimpleList: async () => {
    return await request.get({ url: `/office/vehicle/simple-list` })
  },

  // 修改车辆状态
  updateVehicleStatus: async (id: number, status: number) => {
    return await request.put({ url: `/office/vehicle/update-status?id=${id}&status=${status}` })
  },
}
